package com.ilink.ilinkcommon.domain.PO.studyservice;

/**
 * <h3>new-ilink-java-backend</h3>
 *
 * @Description <p>音视频资源的实体类表</p>
 * @Author pengshiyao
 * @Date 2024-09-16 14:57
 **/

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * @ClassName CourseSource
 * @Description
 * @Author pengshiyao
 * @Date 2024-09-16 14:57
 **/
@Data
@TableName("coursesource")
public class CourseSource implements Serializable {
    @TableId(value = "coursesource_id", type = IdType.INPUT)
    private Long courseSourceId;

    @TableField("language")
    private String language;

    @TableField("is_translated")
    private Boolean isTranslated;

    @TableField("speaker_type")
    private String speakerType;

    @TableField("created_at")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    private Date createdAt;

    @TableField("updated_at")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    private Date updatedAt;

    @TableField("file_id")
    private Long fileId;

    @TableField("file_name")
    private String fileName;

    //filesource_path VARCHAR(555) NOT NULL,
    @TableField("filesource_path")
    private String filesourcePath;

    @TableField("course_id")
    private Long courseId;

    @TableField("oss_write_status")
    private Boolean ossWriteStatus;

    @TableField("transcription_complete")
    private Boolean transcriptionComplete;

    @TableField("transcription_complete_status")
    private Boolean transcriptionCompleteStatus;

    @TableField("task_id")
    private String taskId;

    @TableField("study_time_requirement")
    private Integer studyTimeRequirement;

}
